var jsModule =  uni.requireNativePlugin("MyModule");
exports.jsModule = {
	install: function(Vue, options) {
		// Vue.prototype.jsModule =  uni.requireNativePlugin("MyModule")
		// Vuex.prototype.isopencar =  123;
		// Vuex.prototype.setisopencar = function(data){
		// 	this.isopencar = data
		// };
		Vue.prototype.dqLoginInitProject = function(uid,callback) {
			// 注册设备
			jsModule.dqLoginInitProject(uid,
				(res) => {
					return callback(res)
				})
			// return callback(11)
		}
		Vue.prototype.dqRegisterInitProject = function(uid,callback) {
			// 注册用户
			jsModule.dqRegisterInitProject(uid,
				(res) => {
					return callback(res)
				})
		}
		// 调用jar包接口，数据返回{success:true/false,message:'str',data:...}
		Vue.prototype.checkBluetoothPermission= function(callback) {
			// 执行蓝牙封装类和权限申请以及蓝牙状态回调,调用成功后无数据返回
			jsModule.checkBluetoothPermission(
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqAuthDevs = function(params,callback) {
			// 获取当前设备列表回
			var params = {pageIndex:1,pageSize:10}
			jsModule.dqAuthDevs(params,
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqGetDevInfo = function(params) {
			// 点击设备选择设备
			// var params = 1  //列表序号
			jsModule.dqGetDevInfo(params)
		}	
		Vue.prototype.sendCom = function(text,callback=null) {
			// 发送指令传的字符串如下
			// "Cmd_Unlock";//开锁解除防盗/开锁
			// "Cmd_Lock";//关锁设防/关锁
			// "Cmd_Start_Up";//启动
			// "Cmd_Shut_Down";//熄火
			// "Cmd_Open_Trunk";//开启后备箱
			// "Cmd_Close_Window";//关闭车窗
			// "Cmd_Open_Window";//打开车窗
			// "Cmd_Wash_Car";//切换至洗车模式
			// "Cmd_To_Unlock";//切换到解防模式
			// "Cmd_Intercept_Car";//拦截车辆模式
			// "Cmd_To_Normal";//切换到正常模式
			uni.vibrateLong({
			    success: function () {
			        console.log('success');
			    }
			});
			jsModule.sendCom(text)
		}
		Vue.prototype.dqGetUnlockState = function(text) {
			// 发送指令传的字符串如下
			// "Cmd_Unlock";//开锁解除防盗/开锁
			// "Cmd_Lock";//关锁设防/关锁
			// "Cmd_Start_Up";//启动
			// "Cmd_Shut_Down";//熄火
			// "Cmd_Open_Trunk";//开启后备箱
			// "Cmd_Close_Window";//关闭车窗
			// "Cmd_Open_Window";//打开车窗
			// "Cmd_Wash_Car";//切换至洗车模式
			// "Cmd_To_Unlock";//切换到解防模式
			// "Cmd_Intercept_Car";//拦截车辆模式
			// "Cmd_To_Normal";//切换到正常模式
			jsModule.dqGetUnlockState(text)
		}
		Vue.prototype.sendTimeCom = function(text,time) {
			// 发送指令传的字符串如下
			// "Cmd_Unlock";//开锁解除防盗/开锁
			// "Cmd_Lock";//关锁设防/关锁
			// "Cmd_Start_Up";//启动
			// "Cmd_Shut_Down";//熄火
			// "Cmd_Open_Trunk";//开启后备箱
			// "Cmd_Close_Window";//关闭车窗
			// "Cmd_Open_Window";//打开车窗
			// "Cmd_Wash_Car";//切换至洗车模式
			// "Cmd_To_Unlock";//切换到解防模式
			// "Cmd_Intercept_Car";//拦截车辆模式
			// "Cmd_To_Normal";//切换到正常模式
			// Cmd_Veh_Check";//车辆自检
			uni.vibrateLong({
			    success: function () {
			        console.log('success');
			    }
			});
			jsModule.sendTimeCom(text,time)
		}
		Vue.prototype.dqBindDevice = function(devSn,callback) {
			// 绑定设备
			jsModule.dqBindDevice(devSn, 
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqDeviceGps = function(params,callback) {
			// 获取位置信息
			console.log('获取位置信息')
			// var params = {devCode:devCode,startTime:'',endTime:'',pageIndex:1,pageSize:10}
			jsModule.dqDeviceGps(params,
				(res) => {
					return callback(res)
				})
		}
					
		Vue.prototype.dqVehState = function(devSn,callback) {
			console.log('获取车辆状态')
			// 获取车辆状态
			// var devSn = this.devSn; 
			jsModule.dqVehState(devSn, 
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqAuthAssistantKey = function(params,callback) {
			// 副钥匙授权
			// devCode 授权设备号    
			// uid2    授权的用户   
			// power权限  0x0001锁权限  0x0002发动机控制权限  0x0004远程权限 
			//             0x1000 遥控器 0x2000 临时用户        0x4000 普通用户
			// 16进制 &关系   比如普通用户所有权限都有就是 Ox4007
			//                 比如普通用户兼容临时用户 只有锁权限就是 0x6001 
			// 根据UI界面选择赋予副钥匙什么权限，传什么值(要根据格式传递，16进制)
			// var params = {devCode:this.devSn,uid2:123,power:'0x0001',startTime:1,endTime:10}
			jsModule.dqAuthAssistantKey(params, 
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqAuthKeys = function(params,callback) {
			// 副钥匙授权
			// var params = {pageIndex:1,pageSize:10}
			jsModule.dqAuthKeys(params,
				(res) => {
					return callback(res)
				})
		}
					
		Vue.prototype.dqAuthKeySendData = function(params) {
			// 授权
			// var params = {cmd:1,sn:10,uid:123,action:'',devId:'',data:'',uid_index:''}
			jsModule.dqAuthKeySendData(params) 
		}
					
		Vue.prototype.dqDelAuthKey = function(id,callback) {
			// 撤销授权
			// 授权id
			// var id = 1;
			jsModule.dqDelAuthKey(id,
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqTransferVeh = function(params,callback) {
			// 过户车辆
			// var params = {devCode:params.devSn,uid2:params.uid}
			jsModule.dqTransferVeh(params,
				(res) => {
					return callback(res)
				})
		}
		
		Vue.prototype.dqDelVehDevice = function(devCode,callback) {
			// 删除车辆
			// var devCode = this.devSn
			jsModule.dqDelVehDevice(devCode,
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqVehOnline = function(devCode,callback) {
			// 查询车辆是否在线
			// var devCode = this.devSn
			jsModule.dqVehOnline(devCode,
				(res) => {
					return callback(res)
				})
		}
		Vue.prototype.dqClear = function() {
			// 退出登录，释放资源
			// var devCode = this.devSn
			// console.log('1111111');
			jsModule.dqClear()
		}
		Vue.prototype.delDeviceInfo = function() {
			// 切换设备，释放jar包当前缓存资源
			// var devCode = this.devSn
			jsModule.delDeviceInfo()
		}
		Vue.prototype.startMacScan = function() {
			// 扫描蓝牙
			// var devCode = this.devSn
			jsModule.startMacScan()
		}
		// dqDestroy
		
		Vue.prototype.dqDestroy = function() {
			// 退出应用杀死程序销毁的方法
			// var devCode = this.devSn
			jsModule.dqDestroy()
		}
	}
}
